//
//  WYDevHelper.h
//  WYDevHelper
//
//  Created by longtu on 15/5/19.
//  Copyright (c) 2015年 longtu. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

typedef void (^LocationBlock)(float latitude, float longitude);
typedef void (^LocationError)(NSError *error);
@interface WYDeviceHelper : NSObject
@property (strong, nonatomic) LocationBlock locationBlock;
@property (strong, nonatomic) LocationError locationError;
#pragma mark -  获取定位坐标
+ (void ) locationBlock:(LocationBlock)block errorBlock:(LocationError)error;
// 手机别名： 用户定义的名称
+ (NSString *) OSUserPhoneName;
// 设备名称
+ (NSString *) OSSystemName;
// 设备型号
+ (NSString *) OSPhoneModel;
// 地方型号 (国际化区域名称)
+ (NSString *) OSLocalPhoneModel;
// 设备类型
+ (NSString *) OSModel;
// 手机系统版本
+ (NSString *) OSPhoneVersion;
// UDID
+ (NSString *) deveiceUDID;
// IDFA
+ (NSString *) deveiceADFA;
// 当前应用名称
+ (NSString *) appName;
// 当前应用软件版本
+ (NSString *) appVersion;
// 当前应用版本号码   int类型
+ (NSString *) appVersionNum;
// 包名
+ (NSString *) appPackageName;
#pragma mark - 电池状态
// 电池是否充满电
+ (BOOL ) batteryFullCharged;
// 电池充电
+ (BOOL ) inCharge;
// 设备插入到电源
+ (BOOL ) devicePluggedIntoPower;
// 设备的电池状态
+ (UIDeviceBatteryState ) batteryState;
// 电池电量百分比
+ (NSString *) batteryLevel;
// 获取小时，分钟和秒的开机时间
+ (NSString *) bootTime;
// 屏幕的亮度
+ (NSString *) brightness;
// 该设备是否越狱
+ (BOOL ) isJailbroken;
#pragma mark -  检查总的和可用内存空间
// 装置的总存储器
+ (CGFloat ) totalMemory;
// app 占用内存
+ (NSString *) freeMemorySpace;
#pragma mark - 检查总的和可用磁盘空间
// 设备总的磁盘空间空间
+ (NSString *) totalDiskSpace;
// 设备使用的磁盘空间
+ (NSString *) usedDiskSpace;
// 设备可用磁盘空间
+ (NSString *) freeDiskSpace;
// 应用占用内存百分比
+ (NSInteger ) freeMemorySpacePourcent;
// 以字节为单位的总磁盘空间
+ (CGFloat ) totalDiskSpaceInBytes;
// 以字节为单位的可用磁盘空间
+ (CGFloat ) freeDiskSpaceInBytes;
// 以字节为单位所使用的磁盘空间
+ (CGFloat ) usedDiskSpaceInBytes;

#pragma mark - IP 地址和SSID
// Mac 地址
+ (NSString *) macAddress;
// 获取 IP 地址
+ (NSArray *) getIPAdress;
// 获取无线信道ssid
+ (NSString *) currentWifiSSID;
#pragma mark - 获取个人信息的载体
// 运营商名称
+ (NSString *) carrierName;
// ISO国家代码
+ (NSString *) carrierISOCountryCode;
// 运营商移动国家代码
+ (NSString *) carrierMobileCountryCode;
// 运营商移动网络代码
+ (NSString *) carrierMobileNetworkCode;
// VOIP
+ (BOOL ) carrierAllowsVOIP;
@end

